/*
* INSANE - Interactive Structural Analysis Environment
*
* Copyright (C) 2003-2005
* Universidade Federal de Minas Gerais
* Escola de Engenharia
* Departamento de Engenharia de Estruturas
* 
* Author's email :    insane@dees.ufmg.br
* Author's website :  http://www.dees.ufmg.br/insane
* 
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or any later version.
* 
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*/
package br.ufmg.dees.insane.ui.rich.learn.learn_view.element_view.command;

import java.util.ArrayList;

import javax.swing.JFrame;

import br.ufmg.dees.insane.ui.rich.learn.learn_view.LearnInterface;
import br.ufmg.dees.insane.ui.rich.learn.learn_view.command.Command;

/**
*
* @author Moreira, Renata & Pitangueira, Roque
* @since May 2005
*/

public class SetReduceNodalForcesCommand implements Command{
	private LearnInterface parent;
	
	
	/** Creates new SetElmAttributesCommand */
	public SetReduceNodalForcesCommand(JFrame parent) {
		this.parent = (LearnInterface)parent;
		
	}	

	/** Execute method. */
	public void execute() {
		
		ArrayList elms = parent.getView().getController().getSelection();
		if ( elms.size() < 1 ) {
			parent.getView().getController().selectAll();
			elms = parent.getView().getController().getSelection();
		}
		
		if (elms.size() == 0) {
			parent.addOutputText("There is no elements in model.");
			return;
		}
		
		NodalReduceForcesDialog  dlg = new NodalReduceForcesDialog(parent);
        dlg.showDialog();
        parent.getView().getController().unSelectAll();
        parent.getView().getDrawingArea().repaint();
	}
	
//*****************************************************************************
	
	/** Impossible to undo - not implemented. */
	public void undo() {
	}
	
//*****************************************************************************
	
	/** Impossible to redo - not implemented. */
	public void redo() {
	}
	
//*****************************************************************************
	
	/** Clone method. 
	public Object clone() {
		try {
			SetElmAttributesCommand cmd = (SetElmAttributesCommand)super.clone();
			return cmd;
		}catch (CloneNotSupportedException e) {
			throw new Error("Clonning ERROR - This should never happen!");
		}
	}
	*/
//*****************************************************************************

}
